Bluetooth low energy frequency offset and modulation index estimation

ABSTRACT

A Bluetooth Low Energy (BLE) device, having a demodulator configured to translate in-phase and quadrature components of a received BLE signal into a differential phase signal; an estimator configured to estimate a frequency offset of the differential phase signal; and a detector configured to detect information in the differential phase signal corrected by the estimated frequency offset.

TECHNICAL FIELD

The present disclosure generally relates to Bluetooth Low Energy (BLE) devices, and more specifically, to BLE devices with frequency offset and modulation index estimation.

BACKGROUND

Bluetooth Low Energy (BLE) is a wireless personal area network technology that, when compared with Regular Bluetooth, provides reduced power consumption and cost while maintaining a similar communication range. In BLE devices, a detector has a significant impact on performance. Traditional BLE devices have a Differential Frequency Estimator (DFE) detector, which detects a received signal in the frequency domain.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a Bluetooth Low Energy system in accordance with the disclosure.

FIG. 2 illustrates a BLE packet format.

FIG. 3 illustrates input and output signals of a FOE and MINDE unit in accordance with the disclosure.

FIG. 4 is a Frequency Offset Estimation and Modulation INDex Estimation (FOE & MINDE) unit signal table in accordance with a hardware implementation used as an example in accordance with the disclosure.

FIG. 5 illustrates a flowchart of a method in accordance with the disclosure.

DESCRIPTION OF THE ASPECTS

The present disclosure is directed to a Bluetooth Low Energy (BLE) device having a demodulator configured to translate in-phase and quadrature components of a received BLE signal into a differential phase signal, an estimator configured to estimate a frequency offset of the differential phase signal, and a detector configured to detect information in the differential phase signal corrected by the estimated frequency offset.

The BLE device performance is improved when the received BLE signal is translated into the In-phase/Quadrature (IQ) domain, and frequency offset and modulation index estimation and correction is performed so that the data detection may be performed by a detector that is a Maximum Likelihood Sequence Detector (MLSD).

FIG. 1 illustrates a Bluetooth Low Energy (BLE) system 100 in accordance with the disclosure.

The BLE system 100 comprises a BLE transmitting device 110 and a BLE receiving device 120. The BLE transmitter 110 is configured to transmit to the BLE receiver 120 a BLE signal that passes through an Additive White Gaussian Noise (AWGN) channel 130.

The BLE receiving device 120 comprises a receiver (not shown), a filter chain 121, a resampler 122, CORDIC and differentiator unit 123, an Infinite Impulse Response (IIR) filter 124, a synchronization detector 125, a Frequency Offset Estimation and Modulation INDex Estimation (FOE & MINDE) unit 126, and an Maximum Likelihood Sequence Estimator (MLSE) 127.

The filter chain 121 comprises a series of filters. The filter chain 121 is configured to, after receiving the BLE signal with modulated data from the BLE transmitter 110, pre-process the received BLE signal for downsampling, In-phase/Quadrature (IQ) imbalance compensation, group delay equalization, and amplitude equalization.

The resampler 122 is configured to sample the filtered data signal having in-phase and quadrature components to IQ data, which is required by the downstream components. A number of times a symbol is sampled is design specific. This disclosure discusses sampling a symbol thirteen times, but the disclosure is not limited in this respect.

The CORDIC and differentiator unit 123 is a demodulator and comprises a CORDIC and a differentiator. The CORDIC (COordinate Rotation Digital Computer) is configured to obtain from the IQ data a phase signal. The differentiator is configured to generate from the phase signal a differential phase signal dθ.

The Infinite Impulse Response (IIR) filter 124 is configured to, in the frequency domain, remove a frequency offset f_(off) from a BLE packet's preamble and access address portions. The BLE packet format is discussed below with respect to FIG. 2.

The synchronization detector 125 is configured to detect an access address of a BLE packet using a synchronization pattern. For every frame, the differential data signal dθ stores in a 32*13 length First-In-First-Out (FIFO) buffer (not shown) data until synchronization is found, and a “Sync Found” flag signal is set. Then the data in the differential phase signal dθ left in the FIFO buffer is correlated with an access address “Synch Pattern.” “Synch State” is a status signal indicating that a block should be started.

The Frequency Offset Estimation and Modulation INDex Estimation (FOE & MINDE) unit 126 is configured to estimate a frequency offset f_(off) of the differential phase signal dθ. FOE & MINDE unit 126 may also be configured to estimate a modulation index η of the differential phase signal dθ.

The Maximum Likelihood Sequence Estimator (MLSE) 127 is a detector configured to detect information in the differential phase signal dθ corrected by the estimated frequency offset f_(off). The MLSE 127 may also be configured to detect information in the differential phase signal dθ using the estimated modulation index η.

FIG. 2 illustrates a BLE packet format 200. A BLE packet comprises a preamble, an access address, a Protocol Data Unit (PDU) and a Cyclic Redundancy Check (CRC). The preamble is a fixed sequence of bits. The access address identifies the BLE connection to which the BLE packet belongs. The PDU is information added or removed by a layer of the Open Systems Interconnection (OSI) model. The CRC is an error-detecting code used to detect accidental changes to raw data.

For a BLE device, the access address has a random pattern. In Bluetooth Regular, on the other hand, the access address has at its end a fixed 1010 pattern. The known 1010 pattern used to estimate frequency offset in Bluetooth Regular systems is not available for BLE.

FIG. 3 illustrates input and output signals of the FOE and MINDE unit 300 in accordance with the disclosure. The FOE and MINDE unit 300 corresponds with the FOE and MINDE unit 126 of FIG. 1.

The FOE and MINDE unit 300 is configured to estimate the frequency offset. This unit 300 can also be configured to estimate the modulation index at the same time the frequency offset is estimated.

The FOE and MINDE unit 300 uses the differential phase signal dθ of the BLE packet's access address to estimate the frequency offset Freoff and modulation index ModlndEst. The access address in BLE has 32 symbols, and is variable. Every symbol is sampled, for example, thirteen times, though the disclosure is not limited in this respect. “FreqOffsetEnable” represents a signal indicating that the frequency offset estimation Freoff can be used.

The frequency offset f_(off) and modulation index η may be estimated in accordance with the following algorithm.

In a first step, a system model in the frequency domain is established in accordance with the following Equation 1:

$\begin{matrix} {{d\; \Theta_{k}} = {{2{f_{off} \cdot {dt}}} + {\eta \cdot {\sum\limits_{l = {k - 19}}^{l = {k + 19}}{b_{l} \cdot {g\left( {{t - 1}{\cdot {dt}}} \right)}}}} + w_{k}}} & \left( {{Equation}\mspace{14mu} 1} \right) \end{matrix}$

where dΘ_(k) is the differential phase signal, f_(off) is the frequency offset, η is the modulation index, b_(l) is the data sequence, g is the Gaussian pulse, k is an index, and w_(k) is the noise. If there were no noise, the two sides of Equation 1 would be equal. The data sequence b_(k), the Gaussian pulse g, and the difference phase signal dΘ_(k) are known, so the

$\sum\limits_{l = {k - 19}}^{l = {k + 19}}{b_{l} \cdot {g\left( {{t - 1}{\cdot {dt}}} \right)}}$

portion of Equation 1 may be calculated in advance.

Equation 1 represents the transmitted signal from the BLE transmitting device 110. When the differential phase signal is transmitted, the Gaussian pulse g is used to convolve with the data B_(l), and multiplied with the modulation index η. The frequency offset f_(off) multiplied with delta time dt is then added.

The access address has 32 symbols, and each symbol has 13 samples, so there are 416 samples for the total access address in the sample domain. Index k is thus 0 to 415. The frequency offset f_(off) and the modulation index η are constant throughout the 416 samples. There are thus 416 equations that must be solved. 32 being the symbols is based on a standard protocol, but the number of samples per symbol is design specific.

In a second step, Equation 1 may be represented in a simpler way in accordance with the following Equation 2:

$\begin{matrix} {C_{k} = {\sum\limits_{l = {k - 19}}^{l = {k + 19}}{b_{l} \cdot {g\left( {{t - 1}{\cdot {dt}}} \right)}}}} & \left( {{Equation}\mspace{14mu} 2} \right) \end{matrix}$

which represents the coefficients C_(k) that can be precalculated with 416 equations, because its portions are known. Equations 1 and 2 relate to one another in accordance with the following Equation 3:

dΘ _(k)=2f _(off) ·dt+C _(k)·η  [Equation 3]

In a third step, the differential phase signal dΘ_(k) and coefficients C_(k) are known, and then the equations may be solved sub-index k times 416 (32×13=416) to obtain the estimated frequency offset f_(off) and modulation index η.

Each data sequence b_(k) is either +1 or −1 in bipolar representation. There are 416 equations. Each of the differential phase signals having a bipolar representation b_(k)=+1 are summed, and each of the differential phase signals having a bipolar representation b_(k)=−1 are summed. The result is, instead of 416 equations, only two equations, which are solved to obtain the estimated frequency offset f_(off) and the modulation index η.

More specifically, to solve the two equations, dΘ_(k) (k=1 . . . m), which has b_(k)=1, is summed, and dΘ_(k) (k=1 . . . n), which has b_(k)=−1 is summed, to obtain the following positive and negative Equations 4 and 5:

$\begin{matrix} \begin{matrix} {ɛ_{M} = {{\sum\limits_{m = 1}^{M}{d\; \Theta_{m}}} = {{{M \cdot 2}\pi \; {f_{off} \cdot {dt}}} + {\sum\limits_{m = 1}^{M}{C_{m} \cdot \eta}}}}} \\ {{\left( {{b_{m} = 1},{m = {1\mspace{14mu} \ldots \mspace{14mu} M}}} \right),{and}}\mspace{14mu}} \end{matrix} & \left( {{Equation}\mspace{14mu} 4} \right) \\ \begin{matrix} {ɛ_{N} = {{\sum\limits_{n = 1}^{N}{d\; \Theta_{n}}} = {{{N \cdot 2}\pi \; {f_{off} \cdot {dt}}} + {\sum\limits_{n = 1}^{N}{C_{n} \cdot \eta}}}}} \\ {\left( {{b_{n} = 1},{n = {1\mspace{14mu} \ldots \mspace{14mu} N}}} \right).} \end{matrix} & \left( {{Equation}\mspace{14mu} 5} \right) \end{matrix}$

As a fourth step, the following calculation is performed in accordance with Equation 6:

$\begin{matrix} {\alpha = {\frac{\sum\limits_{m = 1}^{M}C_{m}}{\sum\limits_{n = 1}^{N}C_{n}}.}} & \left( {{Equation}\mspace{14mu} 6} \right) \end{matrix}$

As a fifth step, solving Equations 4 and 5 above, the estimated frequency offset {circumflex over (f)}_(off) and modulation index {circumflex over (η)} are obtained in accordance with the following respective Equations 7 and 8:

$\begin{matrix} {{{\hat{f}}_{off} = \frac{ɛ_{M} + {\alpha \cdot ɛ_{N}}}{2 \cdot {dt} \cdot \left( {M + {\alpha \cdot N}} \right)}},{and}} & \left( {{Equation}\mspace{14mu} 7} \right) \\ {\hat{n} = {\frac{ɛ_{M} + ɛ_{N} - {{\left( {M + N} \right) \cdot 2}{{\hat{f}}_{off} \cdot {dt}}}}{{\sum\limits_{m = 1}^{M}\; C_{m}} - {\sum\limits_{n = 1}^{N}\; C_{n}}}.}} & \left( {{Equation}\mspace{14mu} 8} \right) \end{matrix}$

FIG. 4 is a Frequency Offset Estimation and Modulation INDex Estimation (FOE & MINDE) unit signal table for the access address 400 in accordance with an example hardware implementation as follows.

First, a 416-length FIFO buffer is configured to buffer data of an input differential phase signal dΘ_(k) (k=0, . . . 415) until synchronization is found (Synch Found).

Second, C_(k) (k=12, . . . 402) is calculated based on a lookup table. C_(k), . . . C_(k+12) is decided based on previous, current and next synchronization symbols.

Third, dΘ_(k) (k=13, . . . 402+σ) which are aligned to C_(k) (k=13, . . . , 402) is chosen.

Fourth, M1, ε_(m), and Ck_P_accum (sum of C_(k)), which are correlated to positive b_(k) are calculated. Also, N1, ε_(N), and Ck_N_accum (sum of C_(k)), which are correlated to negative b_(k) are calculated.

Finally, the estimated frequency offset {circumflex over (f)}_(off) and the estimated modulation index {circumflex over (η)} are calculated as follows:

$\begin{matrix} {{\hat{f}}_{off} = {{4 \cdot \frac{{{{abs}\left( {{Ck\_ N}{\_ accum}} \right)} \cdot ɛ_{M}} + {{Ck\_ Paccum} \cdot ɛ_{N}}}{\begin{matrix} {{{{{abs}\left( {{Ck\_ N}{\_ accum}} \right)} \cdot M}\; 1} +} \\ {{Ck\_ P}{{\_ accum} \cdot N}\; 1} \end{matrix}}} + {\quad{{bias},{and}}}}} & \left( {{Equation}\mspace{14mu} 9} \right) \\ {{\hat{\eta} = {\frac{1}{2} \cdot \left( {\frac{13 \cdot \left( {ɛ_{M} - {M\; {1 \cdot {\hat{f}}_{off}}}} \right.}{\sum\limits_{m = 1}^{M}\; C_{m}} + \frac{13 \cdot \left( {ɛ_{N} - {N\; {1 \cdot \hat{f}}}} \right)_{off}}{\sum\limits_{n = 1}^{N}\; C_{n}}} \right)}},{{{where}\mspace{14mu} M\; 1} = {{\frac{M}{13}\mspace{14mu} {and}\mspace{14mu} N\; 1} = {\frac{N}{13}.}}}} & \left( {{Equation}\mspace{14mu} 10} \right) \end{matrix}$

FIG. 5 illustrates a flowchart 500 of a method in accordance with the disclosure.

In Step 510, a BLE signal having in-phase and quadrature components is received.

In Step 520, the in-phase and quadrature components are translated into a differential phase signal.

In Step 530, a frequency offset of the differential phase signal is estimated. Optionally, a modulation index of the differential phase signal is estimated.

In Step 540, information in the differential phase signal corrected by the estimated frequency offset is detected. Optionally, the information in the differential phase signal is detected using the estimated modulation index.

Example 1 is a Bluetooth Low Energy (BLE) device, comprising a demodulator configured to translate in-phase and quadrature components of a received BLE signal into a differential phase signal; an estimator configured to estimate a frequency offset of the differential phase signal; and a detector configured to detect information in the differential phase signal corrected by the estimated frequency offset.

In Example 2, the subject matter of Example 1, wherein the estimator is further configured to estimate a modulation index of the differential phase signal, and the detector is further configured to detect information in the differential phase signal using the estimated modulation index.

In Example 3, the subject matter of Example 1, wherein the demodulator comprises a COrdinate Rotation Digital Computer (CORDIC) configured to obtain from the in-phase and quadrature components of the received BLE signal a phase signal, and a differentiator unit configured to generate from the phase signal the differential phase signal.

In Example 4, the subject matter of Example 1, wherein the detector is a Maximum Likelihood Sequence Detector (MLSD).

Example 5 is a Bluetooth Low Energy (BLE) system, comprising a first BLE device, which is the BLE device of the subject matter of Example 1, and a second BLE device communicating with the first BLE device.

Example 6 is a Bluetooth Low Energy (BLE) method, comprising translating, by a demodulator, in-phase and quadrature components of a received BLE signal into a differential phase signal, estimating, by an estimator, a frequency offset of the differential phase signal, and detecting, by a detector, information in the differential phase signal corrected by the estimated frequency offset.

In Example 7, the subject matter of Example 6, further comprising estimating, by the estimator, a modulation index of the differential phase signal, and detecting, by the detector, the information in the differential phase signal using the estimated modulation index.

In Example 8, the subject matter of Example 6, further comprising buffering the differential phase signal until synchronization is found.

In Example 9, the subject matter of Example 6, wherein the differential phase signal is represented as

${{d\; \Theta_{k}} = {{2\; {f_{off} \cdot d}\; t} + {\eta \cdot {\sum\limits_{l = {k - 19}}^{l = {k + 19}}\; {b_{l} \cdot {g\left( {t - {1 \cdot {dt}}} \right)}}}} + w_{k}}},$

where dΘ_(k) is the differential phase signal, f_(off) is the frequency offset, ηis the modulation index, b_(l) is the data sequence, g(t) is the Gaussian pulse, k is an index, and w_(k) is the noise, and the estimating the frequency offset comprises calculating coefficients C_(k) in accordance with the following equation

${C_{k} = {\sum\limits_{l = {k - 19}}^{l = {k + 19}}\; {b_{l} \cdot {g\left( {t - {1 \cdot {dt}}} \right)}}}},$

where dΘ_(k)=2f_(off)·dt+C_(k)·η, summing the differential phase signals which have data sequences b_(k) positively aligned, and summing the differential phase signals that have data sequences b_(k) negatively aligned, to obtain the following positive and negative equations

${ɛ_{M} = {{\sum\limits_{m = 1}^{M}\; {d\; \Theta_{m}}} = {{{M \cdot 2}\pi \; {f_{off} \cdot {dt}}} + {\sum\limits_{m = 1}^{M}\; {C_{m} \cdot \eta}}}}},$

where b_(m)=1, m=1 . . . M, and,

${ɛ_{N} = {{\sum\limits_{n = 1}^{N}\; {d\; \Theta_{n}}} = {{{N \cdot 2}\pi \; {f_{off} \cdot d}\; t} + {\sum\limits_{n = 1}^{N}\; {C_{n} \cdot \eta}}}}},$

where b_(n)=1, n=1 . . . N, calculating a in accordance with the following equation

${\alpha = \frac{\sum\limits_{m = 1}^{M}\; C_{m}}{\sum\limits_{n = 1}^{N}\; C_{n}}},$

and calculating the frequency offset in accordance with the following equation

${\hat{f}}_{off} = {\frac{ɛ_{M} + {\alpha \cdot ɛ_{N}}}{2 \cdot {dt} \cdot \left( {M + {\alpha \cdot N}} \right)}.}$

In Example 10, the subject matter of Example 9, wherein estimating a modulation index of the differential phase signal comprises calculating the modulation index in accordance with the following equation:

${\hat{\eta} = \frac{ɛ_{M} + ɛ_{N} - {{\left( {M + N} \right) \cdot 2}{{\hat{f}}_{off} \cdot {dt}}}}{{\sum\limits_{m = 1}^{M}\; C_{m}} - {\sum\limits_{n = 1}^{N}\; C_{n}}}},$

and further comprising detecting, by the detector, the information in the differential phase signal using the estimated modulation index.

Example 11 is a computer program product embodied on a non-transitory computer-readable medium comprising program instructions configured such that when executed by processing circuitry cause the processing circuitry to implement the method of the subject matter of Example 6.

Example 12 is a Bluetooth Low Energy (BLE) device, comprising a demodulating means for translating in-phase and quadrature components of a received BLE signal into a differential phase signal; an estimating means for estimating a frequency offset of the differential phase signal; and a detecting means for detecting information in the differential phase signal corrected by the estimated frequency offset.

In Example 13 the subject matter of Example 12, wherein the estimating means is further for estimating a modulation index of the differential phase signal, and the detecting means is further for detecting information in the differential phase signal using the estimated modulation index.

In Example 14, the subject matter of Example 12, wherein the demodulating means comprises a COrdinate Rotation Digital Computer (CORDIC) means for obtaining from the in-phase and quadrature components of the received BLE signal a phase signal and a differentiator means for generating from the phase signal the differential phase signal.

In Example 15, the subject matter of any of Examples 12-14, wherein the detector is a Maximum Likelihood Sequence Detector (MLSD).

Example 16 is a Bluetooth Low Energy (BLE) system, comprising a first BLE device, which is the BLE device of any of any of Examples 12-14, and a second BLE device communicating with the first BLE device.

Example 17 is a Bluetooth Low Energy (BLE) method, comprising translating, by a demodulating means, in-phase and quadrature components of a received BLE signal into a differential phase signal; estimating, by an estimating means, a frequency offset of the differential phase signal; and detecting, by a detecting means, information in the differential phase signal corrected by the estimated frequency offset.

In Example 18, the subject matter of Example 17, further comprising estimating, by the estimating means, a modulation index of the differential phase signal, and detecting, by the detecting means, the information in the differential phase signal using the estimated modulation index.

In Example 19, the subject matter of Example 17, further comprising buffering the differential phase signal until synchronization is found.

In Example 20, the subject matter of any of Examples 17-19, wherein the differential phase signal is represented as

${{d\; \Theta_{k}} = {{2\; {f_{off} \cdot {dt}}} + {\eta \cdot {\sum\limits_{l = {k - 19}}^{l = {k + 19}}\; {b_{l} \cdot {g\left( {t - {1 \cdot {dt}}} \right)}}}} + w_{k}}},$

where dΘ_(k) is the differential phase signal, f_(off) is the frequency offset, η is the modulation index, b_(l) is the data sequence, g(t) is the Gaussian pulse, k is an index, and w_(k) is the noise, and the estimating the frequency offset comprises calculating coefficients C_(k) in accordance with the following equation

${C_{k} = {\sum\limits_{l = {k - 19}}^{l = {k + 19}}\; {b_{l} \cdot {g\left( {t - {1 \cdot {dt}}} \right)}}}},$

where dΘ_(k)=2f_(off)·dt+C_(k)·η, summing the differential phase signals which have data sequences b_(k) positively aligned, and summing the differential phase signals that have data sequences b_(k) negatively aligned, to obtain the following positive and negative equations

${ɛ_{M} = {{\sum\limits_{m = 1}^{M}\; {d\; \Theta_{m}}} = {{{M \cdot 2}\pi \; {f_{off} \cdot {dt}}} + {\sum\limits_{m = 1}^{M}\; {C_{m} \cdot \eta}}}}},$

where b_(m)=1, m=1 . . . M, and

${ɛ_{N} = {{\sum\limits_{n = 1}^{N}\; {d\; \Theta_{n}}} = {{{N \cdot 2}\pi \; {f_{off} \cdot d}\; t} + {\sum\limits_{n = 1}^{N}\; {C_{n} \cdot \eta}}}}},$

where b_(n)=1, n=1 . . . N, calculating α in accordance with the following equation

${\alpha = \frac{\sum\limits_{m = 1}^{M}\; C_{m}}{\sum\limits_{n = 1}^{N}\; C_{n}}},$

and calculating the frequency offset in accordance with the following equation

${\hat{f}}_{off} = {\frac{ɛ_{M} + {\alpha \cdot ɛ_{N}}}{2 \cdot {dt} \cdot \left( {M + {\alpha \cdot N}} \right)}.}$

In Example 21, the subject matter of any of Examples 17-19 wherein estimating a modulation index of the differential phase signal comprises calculating the modulation index in accordance with the following equation

${\hat{\eta} = \frac{ɛ_{M} + ɛ_{N} - {{\left( {M + N} \right) \cdot 2}\; {{\hat{f}}_{off} \cdot {dt}}}}{{\sum\limits_{m = 1}^{M}\; C_{m}} - {\sum\limits_{n = 1}^{N}\; C_{n}}}},$

and further comprising detecting, by the detector, the information in the differential phase signal using the estimated modulation index.

Example 22 is a computer program product embodied on a non-transitory computer-readable medium comprising program instructions configured such that when executed by processing circuitry cause the processing circuitry to implement the subject matter of any of Examples 17-19.

Example 23 is an apparatus as shown and described.

Example 24 is a method as shown and described.

While the foregoing has been described in conjunction with exemplary aspect, it is understood that the term “exemplary” is merely meant as an example, rather than the best or optimal. Accordingly, the disclosure is intended to cover alternatives, modifications and equivalents, which may be included within the scope of the disclosure.

Although specific aspects have been illustrated and described herein, it will be appreciated by those of ordinary skill in the art that a variety of alternate and/or equivalent implementations may be substituted for the specific aspects shown and described without departing from the scope of the present application. This application is intended to cover any adaptations or variations of the specific aspects discussed herein. 

1. A Bluetooth Low Energy (BLE) device, comprising: a demodulator configured to translate in-phase and quadrature components of a received BLE signal into a differential phase signal; an estimator configured to estimate a frequency offset of the differential phase signal, and configured to estimate a modulation index of the differential phase signal; and a detector configured to detect information in the differential phase signal corrected by the estimated frequency offset using the estimated modulation index, wherein the differential phase signal is represented as ${{d\; \Theta_{k}} = {{2\; {f_{off} \cdot {dt}}} + {\eta \cdot {\sum\limits_{l = {k - 19}}^{l = {k + 19}}\; {b_{l} \cdot {g\left( {t - {1 \cdot {dt}}} \right)}}}} + w_{k}}},$ where dΘ_(k) is the differential phase signal, f_(off) is the frequenc offset, η is the modulation index, b_(l) is the data sequence, g(t) is the Gaussian pulse, k is an index, and w_(k) is the noise, and the estimating the frequency offset comprices: calculatir, coefficients C_(k) in accordance with the following, equation: ${C_{k} = {\sum\limits_{l = {k - 19}}^{l = {k + 19}}\; {b_{l} \cdot {g\left( {t - {1 \cdot {dt}}} \right)}}}},$ where dΘ_(k)=2f_(off)·dt+C_(k)·η, summing differential phase signals which have data sequences b_(k) positively aligned, and summing differential phase signals that have data sequences b_(k) negatively aligned, to obtain the following positive and negative equations, respectively: ${ɛ_{M} = {{\sum\limits_{m = 1}^{M}\; {d\; \Theta_{m}}} = {{{M \cdot 2}\pi \; {f_{off} \cdot {dt}}} + {\sum\limits_{m = 1}^{M}\; {C_{m} \cdot \eta}}}}},$ where b_(m)=1, m=1 . . . M, and ${ɛ_{N} = {{\sum\limits_{m = 1}^{N}\; {d\; \Theta_{n}}} = {{{N \cdot 2}\pi \; {f_{off} \cdot {dt}}} + {\sum\limits_{n = 1}^{N}\; {C_{n} \cdot \eta}}}}},$ where b_(m)=1, n=1 . . . N calculating α in accordance with the following equation: ${\alpha = \frac{\sum\limits_{m = 1}^{M}\; C_{m}}{\sum\limits_{n = 1}^{N}\; C_{n}}},$ and calculating the frequency offset in accordance with the following equation: ${\hat{f}}_{off} = {\frac{ɛ_{M} + {\alpha \cdot ɛ_{N}}}{2 \cdot {dt} \cdot \left( {M + {\alpha \cdot N}} \right)}.}$
 2. (canceled)
 3. The BLE device of claim 1, wherein the demodulator comprises: a COrdinate Rotation Digital Computer (CORDIC) configured to obtain from the in-phase and quadrature components of the received BLE signal a phase signal; and a differentiator configured to generate from the phase signal the differential phase signal.
 4. The BLE device of claim 1, wherein the detector is a Maximum Likelihood Sequence Detector (MLSD).
 5. A Bluetooth Low Energy (BLE) system, comprising: a first BLE device, which is the BLE device of claim 1; and a second BLE device communicating with the first BLE device.
 6. A Bluetooth Low Energy (BLE) method, comprising: translating, by a demodulator, in-phase and quadrature components of a received BLE signal into a differential phase signal; estimating, by an estimator, a frequency offset of the differential phase signal; estimating, by the estimator, a modulation index of the differential phase signal; and detecting, by a detector, information in the differential phase signal corrected by the estimated frequency offset using the estimated modulation index, wherein the differential phase signal is represented as ${{d\; \Theta_{k}} = {{2\; {f_{off} \cdot {dt}}} + {\eta \cdot {\sum\limits_{l = {k - 19}}^{l = {k + 19}}\; {b_{l} \cdot {g\left( {t - {1 \cdot {dt}}} \right)}}}} + w_{k}}},$ where dΘ_(k) is the differential phase signal, f_(off) is the frequency offset, η is the modulation index, b_(l) is the data sequence, g(t) is the Gaussian pulse, k is an index, and w_(k) is the noise, and the estimating the frequency offset comprises: calculating coefficients C_(k) in accordance with the following equation: ${C_{k} = {\sum\limits_{l = {k - 19}}^{l = {k + 19}}\; {b_{l} \cdot {g\left( {t - {1 \cdot {dt}}} \right)}}}},$ where dΘ_(k)=2f_(off)·dt+C_(k)·η, summing differential phase signals which have data sequences b_(k) positively aligned, and summing differential phase signals that have data sequences b_(k) negatively aligned, to obtain the following positive and negative equations, respectively: ${ɛ_{M} = {{\sum\limits_{m = 1}^{M}\; {d\; \Theta_{m}}} = {{{M \cdot 2}\pi \; {f_{off} \cdot {dt}}} + {\sum\limits_{m = 1}^{M}\; {C_{m} \cdot \eta}}}}},$ where b_(m)=1, m=1 . . . M, and ${ɛ_{N} = {{\sum\limits_{n = 1}^{N}\; {d\; \Theta_{n}}} = {{{N \cdot 2}\pi \; {f_{off} \cdot {dt}}} + {\sum\limits_{n = 1}^{N}\; {C_{n} \cdot \eta}}}}},$ where b_(n)=1, n=1 . . . N. calculating α in accordance with the following equation: ${\alpha = \frac{\sum\limits_{m = 1}^{M}\; C_{m}}{\sum\limits_{n = 1}^{N}\; C_{n}}},$ and calculating the frequency offset in accordance with the following equation: ${\hat{f}}_{off} = {\frac{ɛ_{M} + {\alpha \cdot ɛ_{N}}}{2 \cdot {dt} \cdot \left( {M + {\alpha \cdot N}} \right)}.}$
 7. (canceled)
 8. The BLE method of claim 6, further comprising buffering the differential phase signal until synchronization is found.
 9. (canceled)
 10. The BLE method of claim 6, wherein estimating a modulation index of the differential phase signal comprises calculating the modulation index in accordance with the following equation: ${\hat{\eta} = \frac{ɛ_{M} + ɛ_{N} - {{\left( {M + N} \right) \cdot 2}\; {{\hat{f}}_{off} \cdot {dt}}}}{{\sum\limits_{m = 1}^{M}\; C_{m}} - {\sum\limits_{n = 1}^{N}\; C_{n}}}},$ and further comprising detecting, by the detector, the information in the differential phase signal using the estimated modulation index.
 11. A computer program product embodied on a non-transitory computer-readable medium comprising program instructions configured such that when executed by processing circuitry cause the processing circuitry to implement the method of claim
 6. 12. The BLE device of claim 1, wherein estimating a modulation index of the differential phase signal comprises calculating the modulation index in accordance with the following equation: $\hat{\eta} = {\frac{ɛ_{M} + ɛ_{N} - {{\left( {M + N} \right) \cdot 2}\; {{\hat{f}}_{off} \cdot {dt}}}}{{\sum\limits_{m = 1}^{M}\; C_{m}} - {\sum\limits_{n = 1}^{N}\; C_{n}}}.}$ 